﻿Criar um método que implementa a alteração de tela no Mostrador.
public void insereFila(String nomeFila, String valor){
	((FilaComponente)componentes.getComponentePorNome(nomeFila)).inserir(valor);
}

Criar uma classe CommandInsereFila extends Command no pacote tirateima.gerador com a implementação  da ação do JavaCC:

public class CommandInsereFila extends Command {

	private String nome;
	private String valor;
	
	/**
	 * Construtor que recebe os parametros do JavaCC
	 */
	public CommandInsereFila(String nome, String valor) {
		this.nome = nome;
		this.valor = valor;
	}
	
	@Override
	public void execute(Gerador g) throws TiraTeimaLanguageException {
		g.mostrador.insereFila(nome, valor);
	}

}

No TiraTeima.jj:

Criar tokens necessarios para o reconhecimento dos comandos:
	<KW_INSERE_FILA : "insereFila">

Criar função void cmd_acao_componente(Step p) com os tokens para reconhecimento dos comandos:

void cmd_insere_fila(Step p) :
{
  String valor;
  String nomeFila;
  Token t_name;
}
{
	<KW_INSERE_FILA>
	{}
	(t_name = <IDENTIFIER>)
	{
		nomeFila = t_name.image;
	}
	(t_name = <IDENTIFIER>)
	{
	  	valor = t_name.image;
		p.addCommand(new CommandInsereFila(nomeFila, valor));
	}
	<SEMICOLON>{}
}






Acrescentar função no void command(Step p) : {}


void command(Step p) : {}
{
	<SEMICOLON> |
	cmd_new_type(p) |
	cmd_new_var(p) |
	cmd_atrib(p) |
	cmd_direct_pointer(p) |
	cmd_new_file(p) |
	function_declaration(p) |
	function_start(p) |
	function_end(p) |
	cmd_cria_pilha(p) |
	cmd_push_pilha(p) |
	cmd_pop_pilha(p) |
	cmd_cria_fila(p) |
	cmd_insere_fila(p) |
	cmd_remove_fila(p) |
	bloco(p)
}
